This function obtains syntax colouring information for a function.
Y is a vector of character vectors containing the ⎕NR representation of a function or operator.
R is a vector of integer vectors with the same shape and structure of Y in which each number identifies the syntax colour element associated with the corresponding character in Y.
∇foo∇ ∇ foo;local [1] global [2] local←⍴⍴'hello' ∇ ⎕NR 'foo' foo;local global local←⍴⍴'hello' {(↑⍵),↑200⌶⍵}⎕NR 'foo' foo;local 3 21 21 21 19 34 34 34 34 34 0 0 0 0 0 0 global 3 7 7 7 7 7 7 0 0 0 0 0 0 0 0 0 local←⍴⍴'hello' 3 34 34 34 34 34 19 23 23 4 4 4 4 4 4 4
In this example:
21 | is the syntax identifier for "character constant" |
19 | is the syntax identifier for "primitive" |
3 | is the syntax identifier for "white space" |
34 | is the syntax identifier for "local name" |
7 | is the syntax identifier for "global name" |
23 | is the syntax identifier for "idiom" |
The list of syntax colour elements supported by the current interpreter is given by 201⌶. It is important to note that the values may change within a release, and are very likely to change across releases .. you should always call 201⌶ rather than relying the results from a different interpreter. See Syntax Colour Tokens.